<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="./js/vue.js"></script>

</head>
<body>
<div id="app">

    <h1>组件通信之子传父：自定义事件</h1>

    子组件的值：{{p_name}}
    <div style="background-color: pink">
        <Child @myevent="handleEvent"></Child>
    </div>


</div>


</body>

<script>

    // 全局组件
    Vue.component('Child', {
        template: `
          <div>
          <h2>我是Child组件</h2>
          <input type="text" v-model="name">-->{{ name }}
          <button @click="handleSend">传给父亲</button>
          </div>`,
        data() {
            return {
                name: ''
            }
        },
        methods: {
            handleSend() {
                this.$emit('myevent',this.name)
            }
        }
    })


    var vm = new Vue({
        el: '#app',
        data: {
            p_name: ''
        },
        methods: {
            handleEvent(name) {
                // name 是 子组件中调用  this.$emit('myevent',this.name) 传过来的
                // alert('美女')
                this.p_name=name  // 把子组件中传入的，赋值给父组件的p_name变量
            }
        }


    })


</script>
</html>